The present disclosure generally relates to virtual or augmented reality systems and more specifically relates to headsets for virtual reality systems that obtain depth information of a local area.
Providing virtual reality (VR) or augmented reality (AR) content to users through a head mounted display (HMD) often relies on localizing a user's position in an arbitrary environment and determining a three dimensional mapping of the surroundings within the arbitrary environment. The user's surroundings within the arbitrary environment may then be represented in a virtual environment or the user's surroundings may be overlaid with additional content.
Conventional HMDs include one or more quantitative depth cameras to determine surroundings of a user within the user's environment. Typically, conventional depth cameras use structured light or time of flight to determine the HMD's location within an environment. Structured light depth cameras use an active illumination source to project known patterns into the environment surrounding the HMD. However, structured light commonly requires a pattern that is projected to be configured so different portions of the pattern include different characteristics that are later identified. Having different characteristics of different portions of the pattern causes signification portions of a resulting image of the projected pattern to not be illuminated. This inefficiently uses a sensor capturing the resulting image; for example, projection of the pattern by a structured light depth camera results in less than 10% of sensor pixels collecting light from the projected pattern, while requiring multiple sensor pixels to be illuminated to perform a single depth measurement.
Time of flight depth cameras measure a round trip travel time of light projected into the environment surrounding a depth camera and returning to pixels on a sensor array. While time of flight depth cameras are capable of measure depths of different objects in the environment independently via each sensor pixel, light incident on a sensor pixel may be a combination of light received from multiple optical paths in the environment surrounding the depth camera. Existing techniques to resolve the optical paths of light incident on a sensor pixels are computationally complex and do not fully disambiguate between optical paths in the environment.